package com.hspedu.innerClass.Exercise;

/**
 * 匿名内部类可以当作实参直接传递，简单方便
 */
public class InnerClassExercise01 {
    public static void main(String[] args) {

        //1.使用匿名内部类可以方便的使用，只用一次可以使用
        f1(new IA() {
            @Override
            public void cry() {
                System.out.println("crying");
            }
        });

        //2.传统方式调用IA接口的实现类，多次使用对象可以使用
        kid kid = new kid();
        kid.cry();
    }

    //静态方法形参是接口类型
    public static void f1(IA a){
        a.cry();
    }
}

interface IA{
    public void cry();
}
//传统方法：写一个类实现IA接口
class kid implements IA{

    @Override
    public void cry() {
        System.out.println("kid is crying");
    }
}